/**
Carrega do banco de dados os programas cadastrados para determinado ano.
@anoId - ID do ano cadastrado no banco de dados
*/
function CarregarProgramas( anoId )
{
	
		 var selectAno = document.getElementById("anoId");
		 
		 
         var ajax = new sack();
         var url = "CarregarDados.php?informacao=programas&anoId="+anoId;
         ajax.requestFile = url;
         if ( selectAno.ownerDocument.URL == "http://"+servidor+"/ListarPrograma.php")
         {
        	 ajax.onCompletion = function() { ProcessarXMLListarProgramas( ajax.responseXML ); };
         }else{
               ajax.onCompletion = function() { ProcessarXMLProgramas( ajax.responseXML ); };
              }         
         
         ajax.runAJAX();
}

function CarregarProgramasRep( anoId )
{
	
		 var selectAno = document.getElementById("anoId");
		 
		 
         var ajax = new sack();
         var url = "CarregarDados.php?informacao=programas&anoId="+anoId;
         ajax.requestFile = url;
         ajax.onCompletion = function() { ProcessarXMLProgramasRep( ajax.responseXML ); };
              
         
         ajax.runAJAX();
}

function CarregarAcoesPeloAno( anoId )
{
	
		 var selectAno = document.getElementById("anoId");
		 
		 
         var ajax = new sack();
         var url = "CarregarDados.php?informacao=programas&anoId="+anoId;
         ajax.requestFile = url;
         if ( selectAno.ownerDocument.URL == "http://"+servidor+"/ListarPrograma.php")
         {
        	 ajax.onCompletion = function() { ProcessarXMLListarProgramas( ajax.responseXML ); };
         }else{
               ajax.onCompletion = function() { ProcessarXMLProgramas( ajax.responseXML ); };
         }         
         
         ajax.runAJAX();
}

function CarregarNomeProgramas( ano )
{
	
		 var selectAno = document.getElementById("anoId");
		 
		 
         var ajax = new sack();
         var url = "CarregarDados.php?informacao=nomeProgramas&anoId="+ano;
         ajax.requestFile = url;
         if ( selectAno.ownerDocument.URL == "http://"+servidor+"/ListarNomePrograma.php")
         {
         ajax.onCompletion = function() { ProcessarXMLListarNomeProgramas( ajax.responseXML ); };
         }else{
               ajax.onCompletion = function() { 
            	   							ProcessarXMLNomeProgramas( ajax.responseXML ); 
            	   							};
         }         
         
         ajax.runAJAX();
}

/**
Transforma os resultados vindo do XML em informa��es din�micas na tela
@xml - XML com as informa��es sobre o material
*/
function ProcessarXMLProgramas( xml )
{
         var selectProgramas = document.getElementById("listaProgramas");
         var optionPrograma = document.getElementById("programa");

         var i;
         // antes de exibir o resultado limpa o select que contem as informa��es da consulta anterior
         for( i = selectProgramas.length -1; i >= 1; i-- )
         {
                  selectProgramas.remove(i);
         }

         if( xml == null )
         {
             /*var divInformacaoSetor = document.getElementById("informacaoSetor");
             if( divInformacaoSetor != null )
                 divInformacaoSetor.innerHTML = "";*/
             optionPrograma.innerHTML = "Nenhuma a&ccedil;&atilde;o cadastrada!";

         }
         else
         {

              var resultadosXML = xml.getElementsByTagName("programa");

              if( resultadosXML.length > 0) // verifica se houveram resultados
	          {
        		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
        		                      {
                                                  // recupera as informa��es vindas do xml
                                                  var programa = resultadosXML[i];
                                                  var programaId = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
                                                  var programaNome = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;
                                                  var programaCodResumido = programa.getElementsByTagName("cod_resumido")[0].firstChild.nodeValue;

                                                  // adiciona um novo 'option' ao campo select com o setor encontrado
                                                  var novoPrograma = document.createElement("option");
                                                  novoPrograma.setAttribute("id", "programa");
                                                  novoPrograma.value = programaId;
                                                  novoPrograma.text  = "Ptres: "+programaCodResumido+" - "+programaNome;
                                                  selectProgramas.options.add(novoPrograma);
                                      }
                                      optionPrograma.innerHTML = "Selecione a a&ccedil;&atilde;o";
             }
        }
}

/**
Transforma os resultados vindo do XML em informa��es din�micas na tela
@xml - XML com as informa��es sobre o material
*/
function ProcessarXMLProgramasRep( xml )
{
         var selectProgramas = document.getElementById("listaProgramas");
         var optionPrograma = document.getElementById("programa");

         var i;
         // antes de exibir o resultado limpa o select que contem as informa��es da consulta anterior
         for( i = selectProgramas.length -1; i >= 1; i-- )
         {
                  selectProgramas.remove(i);
         }

         if( xml == null )
         {
             /*var divInformacaoSetor = document.getElementById("informacaoSetor");
             if( divInformacaoSetor != null )
                 divInformacaoSetor.innerHTML = "";*/
             optionPrograma.innerHTML = "Todos";

         }
         else
         {

              var resultadosXML = xml.getElementsByTagName("programa");

              if( resultadosXML.length > 0) // verifica se houveram resultados
	          {
        		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
        		                      {
                                                  // recupera as informa��es vindas do xml
                                                  var programa = resultadosXML[i];
                                                  var programaId = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
                                                  var programaNome = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;

                                                  // adiciona um novo 'option' ao campo select com o setor encontrado
                                                  var novoPrograma = document.createElement("option");
                                                  novoPrograma.setAttribute("id", "programa");
                                                  novoPrograma.value = programaId;
                                                  novoPrograma.text  = programaNome;
                                                  selectProgramas.options.add(novoPrograma);
                                      }
                                      optionPrograma.innerHTML = "Todos";
             }
        }
}

function ProcessarXMLNomeProgramas( xml )
{
         var selectProgramas = document.getElementById("listaProgramas");
         var optionPrograma = document.getElementById("programa");

         var i;
         // antes de exibir o resultado limpa o select que contem as informa��es da consulta anterior
         for( i = selectProgramas.length -1; i >= 1; i-- )
         {
                  selectProgramas.remove(i);
         }

         if( xml == null )
         {
             /*var divInformacaoSetor = document.getElementById("informacaoSetor");
             if( divInformacaoSetor != null )
                 divInformacaoSetor.innerHTML = "";*/
             optionPrograma.innerHTML = "Nenhum programa cadastrado!";

         }
         else
         {

              var resultadosXML = xml.getElementsByTagName("programa");

              if( resultadosXML.length > 0) // verifica se houveram resultados
	          {
        		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
        		                      {
                                                  // recupera as informa��es vindas do xml
                                                  var programa = resultadosXML[i];
                                                  var programaId = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
                                                  var programaNome = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;

                                                  // adiciona um novo 'option' ao campo select com o setor encontrado
                                                  var novoPrograma = document.createElement("option");
                                                  novoPrograma.setAttribute("id", "programa");
                                                  novoPrograma.value = programaId;
                                                  novoPrograma.text  = programaNome;
                                                  selectProgramas.options.add(novoPrograma);
                                      }
                                      optionPrograma.innerHTML = "Selecione o programa";
             }
        }
}

//Define a mascara do Codigo Completo recebendo o mesmo como parametro
function formataProgramaCodCompleto(src)
{
	var novoNum = "";
    
        novoNum = src.charAt(0)+src.charAt(1)+"."+src.charAt(2)+src.charAt(3)+src.charAt(4)+"."+
        src.charAt(5)+src.charAt(6)+src.charAt(7)+src.charAt(8)+"."+src.charAt(9)+src.charAt(10)+src.charAt(11)+src.charAt(12)
        +"."+src.charAt(13)+src.charAt(14)+src.charAt(15)+src.charAt(16);
        return novoNum; 
    	
 }


function ProcessarXMLListarProgramas( xml )
{
         var tabelaListarPrograma = document.getElementById("corpoPrograma");

         for( var i = tabelaListarPrograma.rows.length; i > 0 ; i-- ) // remover linhas da tabela
              tabelaListarPrograma.deleteRow ( i-1 );

         if ( xml != null) // verifica se houveram resultados
          {
          var resultadosXML = xml.getElementsByTagName("programa");

    		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
    		                      {
    		                          // recupera as informa��es vindas do xml
    		                          var programa = resultadosXML[i];
    		                          var programaId 		  = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
    		                          var programacodResumido = programa.getElementsByTagName("cod_resumido")[0].firstChild.nodeValue;
    		                          var programacodCompleto = programa.getElementsByTagName("cod_completo")[0].firstChild.nodeValue;
    		                          var programaNome		  = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;
    		                          var ptNome			  = programa.getElementsByTagName("nome_programa")[0].firstChild.nodeValue;
    		                          
    		                          var programaCodCompletoFormatado = formataProgramaCodCompleto(programacodCompleto);
    		                          
    		                          
                                              var trTabelaListarPrograma = document.createElement("tr");
                                              
                                              tabelaListarPrograma.appendChild ( trTabelaListarPrograma );

                                              var tdCodResumidoTabelaListarPrograma = document.createElement("td");
                                              tdCodResumidoTabelaListarPrograma.setAttribute("class", "textoCentral");
                                              tdCodResumidoTabelaListarPrograma.innerHTML = programacodResumido;
                                              trTabelaListarPrograma.appendChild ( tdCodResumidoTabelaListarPrograma );
                                              
                                              var tdCodCompletoTabelaListarPrograma = document.createElement("td");
                                              tdCodCompletoTabelaListarPrograma.setAttribute("class", "textoCentral");
                                              tdCodCompletoTabelaListarPrograma.innerHTML = programaCodCompletoFormatado;
                                              trTabelaListarPrograma.appendChild ( tdCodCompletoTabelaListarPrograma );

                                              var tdNomeProgramaTabelaListarPrograma = document.createElement("td");
                                              tdNomeProgramaTabelaListarPrograma.setAttribute("class", "textoEsquerda");
                                              tdNomeProgramaTabelaListarPrograma.innerHTML = ptNome;
                                              trTabelaListarPrograma.appendChild ( tdNomeProgramaTabelaListarPrograma );
                                                                                            
                                              var tdNomeTabelaListarPrograma = document.createElement("td");
                                              tdNomeTabelaListarPrograma.setAttribute("class", "textoEsquerda");
                                              tdNomeTabelaListarPrograma.innerHTML = programaNome;
                                              trTabelaListarPrograma.appendChild ( tdNomeTabelaListarPrograma );
                                  }
         }else{
              var trTabelaListarPrograma = document.createElement("tr");
              tabelaListarPrograma.appendChild ( trTabelaListarPrograma );

              var tdNomeTabelaListarPrograma = document.createElement("td");
              tdNomeTabelaListarPrograma.setAttribute("colspan", "6");
              tdNomeTabelaListarPrograma.setAttribute("class", "textoCentral");
              tdNomeTabelaListarPrograma.innerHTML = "Não existe nenhum programa cadastrado para esse ano";
              trTabelaListarPrograma.appendChild ( tdNomeTabelaListarPrograma );
         }
}


/**
Carrega do banco de dados os as informa��es cadastradas sobre programa
@programaId - ID do programa cadastrado no banco de dados
*/
function CarregarPrograma( programaId )
{
         if (programaId == 0) // Verifica se o valor � v�lido.
               return false;
               
         var ajax = new sack();
         var url = "CarregarDados.php?informacao=programa&programaId="+programaId;
         ajax.requestFile = url;
         ajax.onCompletion = function() { 
        	 ProcessarXMLPrograma( ajax.responseXML ); 
        	 };
         ajax.runAJAX();
}

function CarregarNomePrograma( programaId )
{
         if (programaId == 0) // Verifica se o valor � v�lido.
               return false;
               
         var ajax = new sack();
         var url = "CarregarDados.php?informacao=nomePrograma&programaId="+programaId;
         ajax.requestFile = url;
         ajax.onCompletion = function() { 
        	 ProcessarXMLNomePrograma( ajax.responseXML ); 
        	 };
         ajax.runAJAX();
}

/**
Transforma os resultados vindo do XML em informa��es din�micas na tela
@xml - XML com as informa��es sobre o programa
*/
function ProcessarXMLPrograma( xml )
{

         if( xml != null )
         {

              var resultadosXML = xml.getElementsByTagName("programa");

              // recupera as informa��es vindas do xml
              var programa = resultadosXML[0];
              var programaId 		  = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
              var programacodResumido = programa.getElementsByTagName("cod_resumido")[0].firstChild.nodeValue;
              var programacodCompleto = programa.getElementsByTagName("cod_completo")[0].firstChild.nodeValue;
              var programaNome		  = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;

              var inputHiddenProgramaId = document.getElementById("programaId");
              inputHiddenProgramaId.value = programaId;

              var inputProgramaCodResumido = document.getElementById("codResumido");
              inputProgramaCodResumido.value = programacodResumido;
              
              var programaCodCompletoFormatado = formataProgramaCodCompleto(programacodCompleto);
              
              var inputProgramaCodCompleto = document.getElementById("codCompleto");         
              inputProgramaCodCompleto.value = programaCodCompletoFormatado;
              
              var inputProgramaNome = document.getElementById("nomePrograma");
              inputProgramaNome.value = programaNome;


        }
}

function ProcessarXMLNomePrograma( xml )
{

         if( xml != null )
         {

              var resultadosXML = xml.getElementsByTagName("programa");

              // recupera as informa��es vindas do xml
              var programa = resultadosXML[0];
              var programaId 		  = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
              var programaNome		  = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;

              var inputHiddenProgramaId = document.getElementById("programaId");
              inputHiddenProgramaId.value = programaId;
              
              var inputProgramaNome = document.getElementById("nomePrograma");
              inputProgramaNome.value = programaNome;


        }
}

function ProcessarXMLListarNomeProgramas( xml )
{
         var tabelaListarPrograma = document.getElementById("corpoPrograma");

         for( var i = tabelaListarPrograma.rows.length; i > 0 ; i-- ) // remover linhas da tabela
              tabelaListarPrograma.deleteRow ( i-1 );

         if ( xml != null) // verifica se houveram resultados
          {
          var resultadosXML = xml.getElementsByTagName("programa");

    		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
    		                      {
    		                          // recupera as informa��es vindas do xml
    		                          var programa = resultadosXML[i];
    		                          var programaId 		  = programa.getElementsByTagName("id")[0].firstChild.nodeValue;
    		                          var programaNome		  = programa.getElementsByTagName("nome")[0].firstChild.nodeValue;
    		                              		                          
    		                          
    		                          
                                              var trTabelaListarPrograma = document.createElement("tr");
                                              
                                              tabelaListarPrograma.appendChild ( trTabelaListarPrograma );

                                              var tdCodResumidoTabelaListarPrograma = document.createElement("td");
                                              tdCodResumidoTabelaListarPrograma.setAttribute("class", "textoCentral");
                                              tdCodResumidoTabelaListarPrograma.innerHTML = programaId;
                                              trTabelaListarPrograma.appendChild ( tdCodResumidoTabelaListarPrograma );
                                              

                                              var tdNomeTabelaListarPrograma = document.createElement("td");
                                              tdNomeTabelaListarPrograma.setAttribute("class", "textoEsquerda");
                                              tdNomeTabelaListarPrograma.innerHTML = programaNome;
                                              trTabelaListarPrograma.appendChild ( tdNomeTabelaListarPrograma );
                                  }
         }else{
              var trTabelaListarPrograma = document.createElement("tr");
              tabelaListarPrograma.appendChild ( trTabelaListarPrograma );

              var tdNomeTabelaListarPrograma = document.createElement("td");
              tdNomeTabelaListarPrograma.setAttribute("colspan", "6");
              tdNomeTabelaListarPrograma.setAttribute("class", "textoCentral");
              tdNomeTabelaListarPrograma.innerHTML = "Não existe nenhum programa cadastrado para esse ano";
              trTabelaListarPrograma.appendChild ( tdNomeTabelaListarPrograma );
         }
}

